package com.ruoyi.common.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.enums.YesOrNoEnum;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.ToString;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 产品硅片产出耗时统计表
 * 
 * @author yinjc
 * @date 2023-05-15
 */
@Data // 替代getter/setter
@ToString // 替代toString
@AllArgsConstructor // 有参数的构造函数
@NoArgsConstructor // 无参数的构造函数
public class PartOutTimeStatic {

    /** 编号 */
    private String id;

    /** 日期时间标识 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "日期时间标识", width = 30, dateFormat = "yyyy-MM-dd")
    private Date timeFlag;

    /** 产品类型 */
    @Excel(name = "产品类型")
    private String materialType;

    /** 产品名称 */
    @Excel(name = "产品名称")
    private String partName;

    /** 卡号 */
    @Excel(name = "批次")
    private String lotId;

    /** 卡类型 */
    @Excel(name = "批次类型")
    private String lotType;

    /** 事务类型 */
    @Excel(name = "事务类型")
    private String transType;

    /** 客户代码 */
    private String customerCode;

    /** 客户名称 */
    private String customerName;

    /** 数量 */
    @Excel(name = "数量", cellType = Excel.ColumnType.NUMERIC)
    private Integer qty;

    /** 批次开始时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "批次开始时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date lotStartTime;

    /** 批次结束时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "批次结束时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date lotShipTime;

    /** 批次生产耗时 */
    @Excel(name = "批次生产耗时", cellType = Excel.ColumnType.NUMERIC)
    private BigDecimal lotConsumeDays;

    /** 该卡cycletime */
    private BigDecimal ct;

    /** 是否参与计算 */
    @Excel(name = "是否参与计算", dictType = "yes_no_status")
    private Integer ifJoinCalculate;

    /** 剔除原因 */
    @Excel(name = "剔除原因")
    private String exclusionReason;

    /** 是否当月汇总数据 */
    private Integer isMonthSummary;

    /** 状态 */
    private Integer status;

    /** 创建者 */
    private String createBy;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    /** 更新者 */
    private String updateBy;

    /** 更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

}
